{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'C:\\\\Users\\\\reliance\\\\Desktop\\\\MARKETING PROJECT'"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "# Libraries for text preprocessing\n",
    "import re\n",
    "import nltk\n",
    "\n",
    "#nltk.download('stopwords')\n",
    "from nltk.corpus import stopwords\n",
    "from nltk.stem.porter import PorterStemmer\n",
    "from nltk.tokenize import RegexpTokenizer#nltk.download('wordnet') \n",
    "from nltk.stem.wordnet import WordNetLemmatizer\n",
    "import os\n",
    "os.getcwd()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>description</th>\n",
       "      <th>text</th>\n",
       "      <th>date</th>\n",
       "      <th>keywords</th>\n",
       "      <th>summary</th>\n",
       "      <th>url</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>5G hype won't close the digital divide</td>\n",
       "      <td>Dhara Singh/CNET\\n\\nTwelve miles from the hust...</td>\n",
       "      <td>2019-08-14 05:00:00-07:00</td>\n",
       "      <td>['speeds', 'close', 'digital', 'hype', 'servic...</td>\n",
       "      <td>\"Especially in Chicago [internet access] must ...</td>\n",
       "      <td>https://www.cnet.com//news/5g-hype-isnt-going-...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Doctor Who will stream on HBO Max</td>\n",
       "      <td>BBC\\n\\nDoctor Who will be streaming exclusivel...</td>\n",
       "      <td>2019-08-01 12:25:00-07:00</td>\n",
       "      <td>['series', 'max', 'stream', 'cw', 'coming', 'd...</td>\n",
       "      <td>BBCDoctor Who will be streaming exclusively on...</td>\n",
       "      <td>https://www.cnet.com//news/doctor-who-will-str...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Leaked dongle hints at end of the headphone ja...</td>\n",
       "      <td>Roland Quandt\\n\\nThe headphone jack on phones ...</td>\n",
       "      <td>2019-08-01 07:41:00-07:00</td>\n",
       "      <td>['samsungs', 'jack', 'dongle', 'samsung', 'rol...</td>\n",
       "      <td>Roland QuandtThe headphone jack on phones had ...</td>\n",
       "      <td>https://www.cnet.com//news/leaked-dongle-hints...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Apple ASMR videos are a pleasure for your eyes...</td>\n",
       "      <td>Geoffrey Morrison/CNET\\n\\nIf autonomous sensor...</td>\n",
       "      <td>2019-08-07 13:27:00-07:00</td>\n",
       "      <td>['apple', 'iphone', 'video', 'wood', 'videos',...</td>\n",
       "      <td>Geoffrey Morrison/CNETIf autonomous sensory me...</td>\n",
       "      <td>https://www.cnet.com//news/apple-asmr-videos-a...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Adobe Fresco shows oil and water(colors) do mix</td>\n",
       "      <td>Sarah Tew/CNET\\n\\nAdobe Fresco makes me wish I...</td>\n",
       "      <td>2019-08-12 06:00:04-07:00</td>\n",
       "      <td>['wish', 'really', 'mobile', 'adobe', 'fresco'...</td>\n",
       "      <td>Adobe credits Apple's latest graphics processo...</td>\n",
       "      <td>https://www.cnet.com//news/adobe-fresco-shows-...</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                         description  \\\n",
       "0             5G hype won't close the digital divide   \n",
       "1                  Doctor Who will stream on HBO Max   \n",
       "2  Leaked dongle hints at end of the headphone ja...   \n",
       "3  Apple ASMR videos are a pleasure for your eyes...   \n",
       "4    Adobe Fresco shows oil and water(colors) do mix   \n",
       "\n",
       "                                                text  \\\n",
       "0  Dhara Singh/CNET\\n\\nTwelve miles from the hust...   \n",
       "1  BBC\\n\\nDoctor Who will be streaming exclusivel...   \n",
       "2  Roland Quandt\\n\\nThe headphone jack on phones ...   \n",
       "3  Geoffrey Morrison/CNET\\n\\nIf autonomous sensor...   \n",
       "4  Sarah Tew/CNET\\n\\nAdobe Fresco makes me wish I...   \n",
       "\n",
       "                        date  \\\n",
       "0  2019-08-14 05:00:00-07:00   \n",
       "1  2019-08-01 12:25:00-07:00   \n",
       "2  2019-08-01 07:41:00-07:00   \n",
       "3  2019-08-07 13:27:00-07:00   \n",
       "4  2019-08-12 06:00:04-07:00   \n",
       "\n",
       "                                            keywords  \\\n",
       "0  ['speeds', 'close', 'digital', 'hype', 'servic...   \n",
       "1  ['series', 'max', 'stream', 'cw', 'coming', 'd...   \n",
       "2  ['samsungs', 'jack', 'dongle', 'samsung', 'rol...   \n",
       "3  ['apple', 'iphone', 'video', 'wood', 'videos',...   \n",
       "4  ['wish', 'really', 'mobile', 'adobe', 'fresco'...   \n",
       "\n",
       "                                             summary  \\\n",
       "0  \"Especially in Chicago [internet access] must ...   \n",
       "1  BBCDoctor Who will be streaming exclusively on...   \n",
       "2  Roland QuandtThe headphone jack on phones had ...   \n",
       "3  Geoffrey Morrison/CNETIf autonomous sensory me...   \n",
       "4  Adobe credits Apple's latest graphics processo...   \n",
       "\n",
       "                                                 url  \n",
       "0  https://www.cnet.com//news/5g-hype-isnt-going-...  \n",
       "1  https://www.cnet.com//news/doctor-who-will-str...  \n",
       "2  https://www.cnet.com//news/leaked-dongle-hints...  \n",
       "3  https://www.cnet.com//news/apple-asmr-videos-a...  \n",
       "4  https://www.cnet.com//news/adobe-fresco-shows-...  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data= pd.read_csv(\"data.csv\")\n",
    "data.iloc[30,2]\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>text</th>\n",
       "      <th>word_count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>Dhara Singh/CNET\\n\\nTwelve miles from the hust...</td>\n",
       "      <td>2297</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>BBC\\n\\nDoctor Who will be streaming exclusivel...</td>\n",
       "      <td>170</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Roland Quandt\\n\\nThe headphone jack on phones ...</td>\n",
       "      <td>192</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Geoffrey Morrison/CNET\\n\\nIf autonomous sensor...</td>\n",
       "      <td>206</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Sarah Tew/CNET\\n\\nAdobe Fresco makes me wish I...</td>\n",
       "      <td>595</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                text  word_count\n",
       "0  Dhara Singh/CNET\\n\\nTwelve miles from the hust...        2297\n",
       "1  BBC\\n\\nDoctor Who will be streaming exclusivel...         170\n",
       "2  Roland Quandt\\n\\nThe headphone jack on phones ...         192\n",
       "3  Geoffrey Morrison/CNET\\n\\nIf autonomous sensor...         206\n",
       "4  Sarah Tew/CNET\\n\\nAdobe Fresco makes me wish I...         595"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['word_count'] = data['text'].apply(lambda x: len(str(x).split(\" \")))\n",
    "data[['text','word_count']].head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    1535.000000\n",
       "mean      534.565472\n",
       "std       498.855413\n",
       "min         3.000000\n",
       "25%       254.000000\n",
       "50%       350.000000\n",
       "75%       606.000000\n",
       "max      3841.000000\n",
       "Name: word_count, dtype: float64"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "##Descriptive statistics of word counts\n",
    "data.word_count.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "the    40376\n",
       "to     21728\n",
       "a      20250\n",
       "and    19683\n",
       "of     17099\n",
       "dtype: int64"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#Identify common words\n",
    "freq = pd.Series(' '.join(data['text']).split()).value_counts()[:5]\n",
    "freq"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Fairy/Poison     1\n",
       "implications.    1\n",
       "Vans             1\n",
       "booked,          1\n",
       "day).\"           1\n",
       "Grit             1\n",
       "BDE,             1\n",
       "eternity,        1\n",
       "zipper,          1\n",
       "\"quickly         1\n",
       "dtype: int64"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#Identify uncommon words\n",
    "freq1 =  pd.Series(' '.join(data\n",
    "         ['text']).split()).value_counts()[-10:]\n",
    "freq1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "##Creating a list of stop words and adding custom stopwords\n",
    "stop_words = set(stopwords.words(\"english\"))\n",
    "##Creating a list of custom stopwords\n",
    "new_words = [\"using\", \"show\", \"result\", \"large\", \"also\", \"iv\", \"one\", \"two\", \"new\", \"previously\", \"shown\"]\n",
    "stop_words = stop_words.union(new_words)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "corpus = []\n",
    "for i in range(0, len(data['text'])):\n",
    "    #Remove punctuations\n",
    "    text = re.sub('[^a-zA-Z]', ' ', data['text'][i])\n",
    "    #Convert to lowercase\n",
    "    text = text.lower()\n",
    "    #remove tags\n",
    "    text=re.sub(\"&lt;/?.*?&gt;\",\" &lt;&gt; \",text)\n",
    "    # remove special characters and digits\n",
    "    text=re.sub(\"(\\\\d|\\\\W)+\",\" \",text)\n",
    "    ##Convert to list from string\n",
    "    text = text.split()\n",
    "    ##Stemming\n",
    "    ps=PorterStemmer()    #Lemmatisation\n",
    "    lem = WordNetLemmatizer()\n",
    "    text = [lem.lemmatize(word) for word in text if not word in  \n",
    "            stop_words] \n",
    "    text = \" \".join(text)\n",
    "    corpus.append(text)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'dhara singh cnet twelve mile hustle bustle time square lie brooklyn neighborhood brownsville part york tourist ever see gone flashing light high tech billboard crossroad world instead story sleek building stand stark contrast bare industrial street surrounding district building york councilwoman alicka amprey samuel say experiencing issue altice optimum internet service past four year rain say service stop complaint internet service provider changed status quo city country conversation next best thing conversation always get something even half way decent said people even grocery store people amprey samuel suffering connection woe across greater brownsville ocean hill community represents brownsville alone resident say rely public wi fi free cheaper use connectivity option according recent report brooklyn public library even broadband like ampry samuel service often spotty hype g next generation mobile technology promise high speed time faster current g tech mask reality million american still waiting adequate broadband access kind resident afford internet service chance buying galaxy note plus g phone list nearly third u household million people lack broadband internet connection least megabit per second according market research firm npd rural household especially losing side digital divide five rural household broadband connection issue taken democratic presidential nominee sen elizabeth warren last week called billion rural broadband program rural problem amprey samuel know life brooklyn populated part america biggest city even reliable internet connection rare playing watch g mean fast downloads phone york chicago whole community risk left behind low income population lack adequate internet access absence home internet connection lead unemployment homelessness adult apply job online tap tech economy child erosion competitive edge peer access educational resource turn daily homework assignment economy move toward high tech job limited cellphone data plan cut city help chicago first city world get g entire neighborhood nearly half resident still lack internet subscription sprint boast consistent g speed megabit per second verizon surpass gigabit per second according cnet speed test chicago west englewood resident still lack household internet access community group like chicktech chicago come local nonprofit primarily serf expose female student stem workshop let stay hour complete homework assignment dhara singh cnet several time workshop ended sit several student homework workshop said nicole frapolly founder chapter especially chicago internet access must basic human right much homework done online frapolly belief partnership chicago would allow extend effort school spokesman city respond request comment even area city council responsive concern equitable internet access like brooklyn conversation provider work progress discussion around low cost internet plan necessarily low cost instead incentive sign time discount ampry samuel said interview amprey samuel talked altice york mayor office need reliable inexpensive broadband district say nothing come conversation optimistic g rolling area home broadband connection improving anytime soon verizon started installing high speed fios york skipped district city sued verizon failing deploy fiber city million household despite promise case ongoing today even basic connection even talking next level connectivity york councilwoman alicka amprey samuel today even basic connection even talking next level connectivity ampry samuel said verizon declined comment litigation altice said already offer low cost service called altice advantage internet service anywhere brooklyn speed megabit per second speed monthly price however enroll discounted program household need participate national school lunch program attend york city public school receive supplemental security income fulfill listed requirement federal government role york city government carrier enable high internet speed biggest problem making sure every part country broadband national map used track access faulty expert say greta byrum co director digital equity laboratory school york say previous misleading data fcc broadband map contributes digital divide york data fcc collect broadband provider aggregated census tract byrum said self reported testing enforcement provider byrum referring form data internet service provider must report twice year th fcc form describes isp coverage advertised speed across u fcc verify accuracy data additionally single census block usually around resident home access broadband service whole area considered covered response public complaint fcc pledged improve broadband map whether building network technology boast different speed bridge digital divide announced phase reverse auction company target unserved location census block additionally create crowd sourcing portal gather input consumer well state local tribal government office economics analytics issue notice neither york city chief technology officer fcc responded request comment cheaper equitable chicago home get online according city latest technology access adoption study low income resident city five time likely internet access karen mossenberger professor school public affair arizona state university conducted research chicago smart city city program close digital divide say absence digital literacy coupled already existing unpaid bill low income household make difficult take advantage cheaper broadband household qualify broadband owe bill lot low income household eligible said mossenberger referring program comcast internet essential promise monthly fee slow speed contribute inequity discounted program often offer speed fall well megabit per second threshold seattle comcast internet essential simply internet wave boast price month however offer speed megabit per second megabit per second respectively additionally internet essential user get access xfinity public wi fi network hour per week full paying customer get unlimited access long term problem speed fine someone homework basic need digitally equitable someone access everybody else said alice lawson broadband cable program manager seattle resident need least need least mbps internet speed stream video hdr download file participate cloud sharing efficiently absence fast internet service sole factor limiting broadband coverage seattle city partner carrier make affordable broadband option low income resident sometimes aware program people speak language might get information affordable internet program might able compare plan price address technical issue said karie wong coordinator chinese information service center work seattle help immigrant vietnam even russia gain internet access comcast spokeswoman trinity thorpe lubneuski said internet essential already offer marketing material different language call center handle different language g reaching leading mobile carrier verizon mobile shying home broadband space g home service still early stage low income american access anytime soon may far stretch imagination verizon largest carrier customer home g service select area sacramento los angeles houston indianapolis asked g prospect low income community city york kevin king spokesman verizon rule goal g building kind process goal nationwide g network said dhara singh cnet competitor mobile receiving justice department approval merge sprint last month aim cover half u household g broadband service excess megabit per second committed launching home g broadband service although light detail underserved area march mentioned launching limited lte home internet service hope connect home end year sprint however currently g smart hub htc monthly price per month give user gb data user connect device wifi established milestone cover rural america g low band spectrum three year six year mobile ceo john legere said earlier press release verizon mobile take time spreading home g broadband smaller player atlas network tried take reign spreading home broadband atlas local seattle tried reach low income population negotiation city atlas network wonderful company interested affordability working team affordable housing lawson said however attention turn major g mobile carrier lawson say city simply leverage ensure carrier verizon mobile disperse small cell capture g signal throughout city especially fcc mandating shorter period time review deployment small cell control ability collect fee taken away local community le ability u collect fee put back public benefit low income community say david keyes seattle digital equity program manager hanging legislative thread clayton bank co founder silicon harlem company aim make group namesake upper manhattan neighborhood technology hub remains optimistic bridging digital divide reason silicon harlem brokered deal spectrum cable internet arm charter communication provide internet service residential building harlem month discounted standard rate dhara singh cnet crisis bank said crisis solve bank keyes faith digital equity act introduced sen patty murray washington act establish grant program administered national telecommunication information administration spur effort digital equity even presidential candidate warren recently announced plan increasing broadband coverage unserved area promised million federal funding fiber structure necessary bring high speed broadband want allow local community build broadband network twenty six state currenly prohibit city owned network end president warren wrote last week medium blog post make sure every home america fiber broadband connection price family afford mean publicly owned operated network giant isps running away taxpayer dollar optimism however strong may take time trickle amprey samuel district le mile office commuter step l atlantic avenue station bright magenta pink mobile billboard state bold font nobody connects yorkers mobile hotspot capped data serve temporary solution family wishing connect internet g make mark across america neither library next gen phone replace home broadband alicka amprey samuel district issue availability grocery store take precedence next generation technology'"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "corpus[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<wordcloud.wordcloud.WordCloud object at 0x0000020D20A31F28>\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 936x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#Word cloud\n",
    "from os import path\n",
    "from PIL import Image\n",
    "from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator\n",
    "import matplotlib.pyplot as plt\n",
    "#% matplotlib inline\n",
    "wordcloud = WordCloud(background_color='pink',stopwords=stop_words,max_words=100,max_font_size=50, random_state=42).generate(str(corpus))\n",
    "print(wordcloud)\n",
    "fig = plt.figure(1)\n",
    "plt.imshow(wordcloud)\n",
    "plt.axis('off')\n",
    "plt.show()\n",
    "#fig.savefig(\"word1.png\", dpi=900)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.feature_extraction.text import CountVectorizer\n",
    "import re\n",
    "cv=CountVectorizer(max_df=0.8,stop_words=stop_words, max_features=10000, ngram_range=(1,3))\n",
    "X=cv.fit_transform(corpus)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['singh',\n",
       " 'cnet',\n",
       " 'mile',\n",
       " 'time',\n",
       " 'square',\n",
       " 'lie',\n",
       " 'brooklyn',\n",
       " 'neighborhood',\n",
       " 'part',\n",
       " 'york']"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "list(cv.vocabulary_.keys())[:10]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Most frequently occuring words\n",
    "def get_top_n_words(corpus, n=None):\n",
    "    vec = CountVectorizer().fit(corpus)\n",
    "    bag_of_words = vec.transform(corpus)\n",
    "    sum_words = bag_of_words.sum(axis=0) \n",
    "    words_freq = [(word, sum_words[0, idx]) for word, idx in      \n",
    "                   vec.vocabulary_.items()]\n",
    "    words_freq =sorted(words_freq, key = lambda x: x[1], \n",
    "                       reverse=True)\n",
    "    return words_freq[:n]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Convert most freq words to dataframe for plotting bar plot\n",
    "top_words = get_top_n_words(corpus, n=20)\n",
    "top_df = pd.DataFrame(top_words)\n",
    "top_df.columns=[\"Word\", \"Freq\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[Text(0, 0, 'said'),\n",
       " Text(0, 0, 'like'),\n",
       " Text(0, 0, 'year'),\n",
       " Text(0, 0, 'company'),\n",
       " Text(0, 0, 'cnet'),\n",
       " Text(0, 0, 'time'),\n",
       " Text(0, 0, 'get'),\n",
       " Text(0, 0, 'apple'),\n",
       " Text(0, 0, 'phone'),\n",
       " Text(0, 0, 'first'),\n",
       " Text(0, 0, 'make'),\n",
       " Text(0, 0, 'watch'),\n",
       " Text(0, 0, 'google'),\n",
       " Text(0, 0, 'people'),\n",
       " Text(0, 0, 'may'),\n",
       " Text(0, 0, 'share'),\n",
       " Text(0, 0, 'service'),\n",
       " Text(0, 0, 'would'),\n",
       " Text(0, 0, 'say'),\n",
       " Text(0, 0, 'note')]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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fFs2D61du1aHDx9Wdna2UlJSNGvWLA0ZMkSjRo1S7969tWXLFkVGRqpJkyb65JNPVFRUZPWxlp2kWJZny5YtSkhI0Msvv6yRI0fqjTfekK+vrxo3bqyWLVuqSpUqKi4u1uHDh13Hq9t8zXx8fFRaWqrZs2dr+PDhiouL0+7duzVz5kz96U9/UocOHTRr1ixt3LhRrVq10oMPPqjXXnvN+vJ1IWeePL1u3TrXHowJEyYoLi5ORUVFqlu3rjp16qQhQ4bI19dXO3bskK+v71lv6u7i4+OjgoICrV27VtOmTdORI0c0c+ZMbdiwQQMHDlRWVpbmzJmj9u3b69tvv72qQ94OHjyop556SkFBQapZs6YcDocmTJigdevW6fnnn9ddd92l7t276+DBg2ratKnatWunXbt26dixY+rXr5+efvppDR48WAEBARafgZ87c2t2SEiInnjiCb3zzjvKysrSjz/+qNatWyskJETNmjXTTTfd5CqrX3/9teu4fpuv24EDB/T0009LOr3nuaCgQJ988olGjx6tWbNm6c4779R9992nRo0a6bvvvtPevXslSX379tWXX37p9j0GZfPp/v379dZbb2no0KH605/+pMLCQu3cuVPXXXed7rjjDvXp00fBwcFKTk5Wdna26zh32xwOh2sPWVJSkt58800lJyfrySef1KlTpzyWKTc3VyNHjlRISIhef/11fffdd/rggw90++2366WXXpLT6dScOXNce+bdrezw2iVLlig9PV133HGH6tSpI39/f504cUItW7ZUWFiYVqxYoYMHD2rSpEmSpBtvvNGtuUpKSrR9+3ZXkTHG6F//+pd69uyp+fPn6+6771aPHj3UsGFDtWrVSs2aNZMkHTp0SO3atXNbroSEBE2bNk179uzRpEmTNHHiRN11113KyMjQwoULVVRUpJycHNWrV087d+60/uUP27dv19y5c/Xyyy/rkUce0dq1a7Vq1Sr17t1bgwYN0rp16xQTE+Nax7trr+WZ6/vXXntNK1asUKNGjfTPf/5T27ZtU1pamiIiItSoUSPFxcXpv//9r6ZMmaKGDRuqRo0a7MlwhzO3DhpjNH36dM2aNUvHjh3TkiVLNGDAACUmJurkyZNq3ry5kpOTtXLlSqWmpiopKUmPP/647rrrLqt5NmzYoF27dqlnz55KS0vTDTfcoP379ys2Nla5ublq2LChGjdurNatW2vdunVat26d/vWvfyknJ0ePPfaYrrvuOmt5zrV582aNGDFC33//veLi4nT//ferY8eO2rx5sw4fPqwhQ4bo+++/1yeffKK+ffsqMDBQt912m+tk0PJWVFQkX19fLV26VNu2bdOUKVPUvHlz19aZBg0a6KabblLDhg1VXFysGjVquN4oL+TceWjlypUaPXq060TPvn376quvvlJhYaH+/e9/q3Hjxlq7dq1Wr16trl276pZbbtGDDz5obQvUe++9p1q1aum6666TMUZxcXEaO3as9u/frxUrVmjYsGFq3LixUlJStH//fvXr10+7du3SRx99pPnz5+vOO+9Unz59rGQ5U2Zmpv785z+rcuXKatu2rbZs2aKOHTsqPT1d48aNU+fOnbV9+3Z9+OGH6t69u26++Wb16dNHLVq0sJ7lfMpOilu4cKEWLlwop9OpuXPn6u6775avr682b96sBx980JUxPj5eqampeu6559xy8ve5WzMl6cUXX9Tq1as1depU/elPf5LT6dSiRYv07LPPau3atfr222+1fft214r/l57cXFhYqFmzZmn06NF66aWXXO85ycnJaty4sW644Qbdeuutatasmeu6L774QrfeeqtrGbK9d/d8yp6fL7/8UjVr1tRtt92mf/3rX65DEwoLCxUaGqqwsDDt3r1bCxcu1L///W/VqlVLgwcPtraXpWwPQfXq1bVy5UrNmjVLxcXFqlu3ruvDR1BQkGrUqKFjx44pNzdXWVlZ+umnn9SuXTu1bNlSXbp0cfuhFA6HQxMnTlRMTIyCgoK0d+9e1a9fX3/84x+1aNEi3XvvvZKkefPmadOmTVq8eLGeffZZNWrUyC1b7729vVVQUKAvv/xSb775pmrWrKkPP/xQhYWFCg8P1/Lly3XPPfe4LVNCQoK2bt0qPz8/bdy4UePHj9fmzZt18OBBFRYWyhij5s2b65ZbblG1atWUnp6ujh07uu3QnzIff/yxXnnlFeXn52v+/Plq166d6tatq507d6pu3br6f//v/6lDhw7avn27Vq5cqWrVqrlOtHaXsm8iDA0NVUZGhtatW6emTZvq1Vdf1ZNPPqlatWqpbt26kk4fXvnDDz8oNjZW77//vkJDQ9W3b9+rnn/OfL2Li4v15ZdfqlGjRvL399ePP/6offv2qW/fvoqPj1dBQYGe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mcPQoUOla0vVTE1N2bBhA/n5+fj4+JCens5rr73GuXPnaGtro1+/fjg5OXHlyhX27dtHQkIC4eHhREREqHwsv8bY2Jjc3Fza2trw9fXFxMSEffv2oaury/PPP09ycrKUGqWOw+WU9xTBFxcXs3TpUgoKCrh06RL79u3j5ZdfJisrC4VCIeXsnzp1iuHDhxMZGcmwYcN+ETw/6DX+W6+1u7XgqlWriI6OpqOjgw8//JBly5axZs0aHBwcpFxaf39/vLy87nrMB6kT0dLSIigoiPb2dj755BPefPNNFi5cSEpKChcvXqS0tBRvb2+MjY3Vmp4Jd6cjKhQKPvzwQ7KysjAxMeHUqVPExcWxfft2LC0taW1tRaFQ8PjjjzNnzhxiY2Px9/cnMjISGxsblY5LQ0ODhoYG1q5dy+7du/Hx8WHLli3IZDKSk5NZtGiRVGxZV1fHN998Q+yn+tEAABvxSURBVGZmJi+++KJa89O73RmkNjU1SamaxsbGFBcXExISgra2NkeOHKGgoICkpCTGjh37i1oHVX6G/1rgHBkZiba2Nvn5+VK6VmVlJX379mXYsGGEhIRIAf2DjOns2bNS4xRPT082btxIYmIiMpmM6upqLly4QFVVFbdu3WL58uX069eP999/X3ru2tpapk6dipGR0QO9BwqFAh0dHdLS0rh+/To//vgjf/3rX7ly5Qp5eXkkJiYSExPD5s2bcXJyYuTIkRw9epTPPvuM1157TQru1aV7vmlqatLe3s7hw4fJy8vD398fR0dH1q5dy/jx49HU1OTixYv069ePQYMGsXfvXr744gtGjRol1YmqgoaGBi0tLaxbt45Nmzbh5OREVlYWpaWlTJo0ia1bt+Lg4ICbmxtyuZyzZ89iaGjISy+9RFhYmMrGcacbN26wd+9e1q9fz61btygoKGDXrl10dHTw/fffs3XrVmbPnk1KSgp6enooFAocHBxISEhQ2RgUCoWUmjlr1iymT59OZmYmnp6eKBQKjIyMsLOz4/z581y/fp0xY8bg4uJCdHS02psD3OmRDjKKi4uxs7PD3NycK1euUFlZyQcffEBzczMvvviidEPv6elJYGCg2orffo2uri56enpcvnyZiooKdHR08PX1xd7eHhcXFywtLdXagvHWrVssWrRI2tGpqanByckJIyMjWltbeeyxxzh16hT79+9n2rRp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\n",
      "text/plain": [
       "<Figure size 936x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#Barplot of most freq words\n",
    "import seaborn as sns\n",
    "sns.set(rc={'figure.figsize':(13,8)})\n",
    "g = sns.barplot(x=\"Word\", y=\"Freq\", data=top_df)\n",
    "g.set_xticklabels(g.get_xticklabels(), rotation=30)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.feature_extraction.text import TfidfTransformer\n",
    " \n",
    "tfidf_transformer=TfidfTransformer(smooth_idf=True,use_idf=True)\n",
    "tfidf_transformer.fit(X)# get feature names\n",
    "feature_names=cv.get_feature_names()\n",
    " \n",
    "# fetch document for which keywords needs to be extracted\n",
    "doc=corpus[2]\n",
    " \n",
    "#generate tf-idf for the given document\n",
    "tf_idf_vector=tfidf_transformer.transform(cv.transform([doc]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1, 10000)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tf_idf_vector.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Function for sorting tf_idf in descending order\n",
    "from scipy.sparse import coo_matrix\n",
    "def sort_coo(coo_matrix):\n",
    "    tuples = zip(coo_matrix.col, coo_matrix.data)\n",
    "    return sorted(tuples, key=lambda x: (x[1], x[0]), reverse=True)\n",
    " \n",
    "def extract_topn_from_vector(feature_names, sorted_items, topn=10):\n",
    "    \"\"\"get the feature names and tf-idf score of top n items\"\"\"\n",
    "    \n",
    "    #use only topn items from vector\n",
    "    sorted_items = sorted_items[:topn]\n",
    "    score_vals = []\n",
    "    feature_vals = []\n",
    "    \n",
    "    # word index and corresponding tf-idf score\n",
    "    for idx, score in sorted_items:\n",
    "        \n",
    "        #keep track of feature name and its corresponding score\n",
    "        score_vals.append(round(score, 3))\n",
    "        feature_vals.append(feature_names[idx])\n",
    " #create a tuples of feature,score\n",
    "    #results = zip(feature_vals,score_vals)\n",
    "    results= {}\n",
    "    for idx in range(len(feature_vals)):\n",
    "        results[feature_vals[idx]]=score_vals[idx]\n",
    "    \n",
    "    return results\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Abstract:\n",
      "roland quandt headphone jack phone good run like good thing eventually must end end seems finally arrived samsung upcoming galaxy note line last holdout trend ditching headphone jack appears samsung going note line leaked image shared thursday roland quandt sammobile seems pretty clear samsung planning mm headphone jack usb c dongle note plus dongle look like well headphone adapter different apple make iphones google make pixel signal end era showing samsung may indeed planning move without port going forward unclear samsung include dongle box like google charge separately like apple answer well samsung heavily rumored leaked next flagship likely need wait samsung unpacked event aug samsung immediately respond request comment\n",
      "\n",
      "Keywords:\n",
      "samsung 0.451\n",
      "dongle 0.296\n",
      "headphone 0.276\n",
      "headphone jack 0.233\n",
      "note line 0.204\n",
      "jack 0.201\n",
      "leaked 0.156\n",
      "planning 0.141\n",
      "note 0.133\n",
      "end 0.122\n",
      "seems 0.114\n",
      "like 0.111\n",
      "holdout 0.107\n",
      "samsung may 0.102\n",
      "mm headphone jack 0.1\n",
      "mm headphone 0.1\n",
      "going forward 0.099\n",
      "samsung unpacked event 0.097\n",
      "like good 0.097\n",
      "aug samsung 0.097\n",
      "line 0.096\n",
      "samsung unpacked 0.094\n",
      "google 0.093\n",
      "good thing 0.091\n",
      "apple 0.09\n"
     ]
    }
   ],
   "source": [
    "sorted_items=sort_coo(tf_idf_vector.tocoo())\n",
    "#sort the tf-idf vectors by descending order of scoressorted_items=sort_coo(tf_idf_vector.tocoo())#extract only the top n; n here is 10\n",
    "keywords=extract_topn_from_vector(feature_names,sorted_items,25)\n",
    " \n",
    "# now print the results\n",
    "print(\"\\nAbstract:\")\n",
    "print(doc)\n",
    "print(\"\\nKeywords:\")\n",
    "for k in keywords:\n",
    "    print(k,keywords[k])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\"Roland QuandtThe headphone jack on phones had a good run, but like all good things, it eventually must end.\\nThat end seems to have finally arrived with Samsung's upcoming Galaxy Note 10 line.\\nAfter being one of the last holdouts against the trend of ditching the headphone jack, it appears that Samsung is going to do just that for the Note 10 line.\\nIn leaked images shared Thursday by Roland Quandt and SamMobile, it seems pretty clear Samsung is planning a 3.5mm headphone jack to USB-C dongle for its new Note 10 and 10 Plus.\\nThe dongle itself looks like, well, a headphone adapter no different than what Apple makes for its iPhones or Google makes for its Pixels.\""
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.iloc[2,4]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "CountVectorizer(analyzer='word', binary=False, decode_error='strict',\n",
       "        dtype=<class 'numpy.int64'>, encoding='utf-8', input='content',\n",
       "        lowercase=True, max_df=1.0, max_features=None, min_df=1,\n",
       "        ngram_range=(1, 1), preprocessor=None, stop_words=None,\n",
       "        strip_accents=None, token_pattern='\\\\w{1,}', tokenizer=None,\n",
       "        vocabulary=None)"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "count_vect = CountVectorizer(analyzer='word', token_pattern=r'\\w{1,}')\n",
    "count_vect.fit(corpus)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [],
   "source": [
    "xtrain_count =  count_vect.transform(corpus)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn import model_selection, preprocessing, linear_model, naive_bayes, metrics, svm\n",
    "from sklearn.feature_extraction.text import TfidfVectorizer, CountVectorizer\n",
    "from sklearn import decomposition, ensemble\n",
    "\n",
    "import pandas, xgboost, numpy, string\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(20, 28517)"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "lda_model = decomposition.LatentDirichletAllocation(n_components=20, learning_method='online', max_iter=20)\n",
    "X_topics = lda_model.fit_transform(xtrain_count)\n",
    "topic_word = lda_model.components_ \n",
    "vocab = count_vect.get_feature_names()\n",
    "topic_word.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "n_top_words = 20\n",
    "topic_summaries = []\n",
    "for i, topic_dist in enumerate(topic_word):\n",
    "    topic_words = numpy.array(vocab)[numpy.argsort(topic_dist)][:-(n_top_words+1):-1]\n",
    "    topic_summaries.append(' '.join(topic_words))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(['redskin', 'gruden', 'share', 'haskins', 'quarterback', 'annabel',\n",
       "       'loverro', 'guice', 'keenum', 'maruti', 'kanika', 'mccoy',\n",
       "       'kapoor', 'cornerback', 'suzuki', 'precious', 'bostic', 'peyton',\n",
       "       'woodrum', 'acl'], dtype='<U41')"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "topic_words"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Fuzzy seq similarity using Levenstein"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "c:\\users\\reliance\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\fuzzywuzzy\\fuzz.py:11: UserWarning: Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning\n",
      "  warnings.warn('Using slow pure-python SequenceMatcher. Install python-Levenshtein to remove this warning')\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from fuzzywuzzy import fuzz\n",
    "fuzz.ratio(topic_summaries[3],corpus[979])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "64"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "fuzz.ratio(\"computer lab\", \"computeYRY\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "label_topics=np.zeros((len(corpus),20))\n",
    "for i in range(len(corpus)):\n",
    "    for j in range(20):\n",
    "        label_topics[i,j]=fuzz.ratio(corpus[i],topic_summaries[j])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 2.,  1.,  2., ...,  2.,  2.,  2.],\n",
       "       [13., 12., 12., ..., 12., 13., 12.],\n",
       "       [ 9., 13.,  8., ..., 12., 12., 10.],\n",
       "       ...,\n",
       "       [11., 10.,  5., ...,  7.,  8.,  8.],\n",
       "       [ 6.,  4.,  7., ...,  5.,  5.,  7.],\n",
       "       [16., 18., 13., ..., 14., 19., 16.]])"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "label_topics"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# String matching using Levenstein\n",
    "selected_topic=[]\n",
    "for i in range(len(corpus)):\n",
    "    selected_topic.append(list(label_topics[i]).index(max(label_topics[i])))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "selected_topic.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'roland quandt headphone jack phone good run like good thing eventually must end end seems finally arrived samsung upcoming galaxy note line last holdout trend ditching headphone jack appears samsung going note line leaked image shared thursday roland quandt sammobile seems pretty clear samsung planning mm headphone jack usb c dongle note plus dongle look like well headphone adapter different apple make iphones google make pixel signal end era showing samsung may indeed planning move without port going forward unclear samsung include dongle box like google charge separately like apple answer well samsung heavily rumored leaked next flagship likely need wait samsung unpacked event aug samsung immediately respond request comment'"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "corpus[2]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'geoffrey morrison cnet autonomous sensory meridian response asmr thing apple added four video shot iphone youtube series wednesday tech giant uploaded video titled tapping scraping crunching whispering ghost forest minute long apple preface video note best enjoyed headphone tapping gentle rain sound accompanied visuals campsite scraping man working wood shop satisfying watch perfect wood shaving curl like visual asmr crunching sound footstep hiking along forest scenery finally whispering tell legend oregon neskowin ghost forest hushed tone video shot iphone x x max playing watch asmr video get made shot iphone series exhibit apple phone video capability user iphone xr x plus posted video channel well study describes asmr sensory phenomenon individual experience tingling static like sensation across scalp back neck time area response specific triggering audio visual stimulus'"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "corpus[3]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'sarah tew cnet adobe fresco make wish talent company ipad pro app painting sketching make wish apple pencil softer nib hey dream time lot painting apps littering app store brush better developed feature procreate seven set option every brush including ability adjust pencil behavior brush brush basis artrage custom paper type metallic paper ink feature complete beta fresco keeping night even come close fact missing lot crucial capability brush type charcoal airbrush palette knife smudging color jitter control ability save custom brush palette roadmap come blending stroke oil watercolor seen anything mobile come close fresco realism adobe credit apple latest graphic processor metal graphic api delivering speed necessary real time mixing watercolor see run screenshot lori grunin cnet adobe call live brush really brush behave way expect accurate retronym type act static brush really engineering distinction live brush live live painting pal pixel brush list includes sketching ink rake marker fresco handful vector brush editable like illustrator path resolution independent scale without jaggies flow like gel ink onto page one really felt like emerging hard apple pencil nib screenshot lori grunin cnet fresco brush engine generally compatible photoshop import standard brush moment adjust setting unsupported capability color jitter bring brush us respect existing jitter setting basic manual selection masking tool including useful option lock layer transparency use mask fresco designed feel natural artist pick use least people want need shortcut like importing existing mask reuse piece fresco project adobe capture favorite adobe mobile apps wish fresco worked better together wish fresco worked better library well fact despite ability open generate layered photoshop file produce illustrator editable pdfs fresco feel much like production tool difficulty repeatability reusability based recent discussion artist still seems gap flow mobile desktop maybe care fresco official pricing availability likely follow model per month inclusion creative cloud subscription la lightroom cc adobe holding max conference beginning november though instead shipping beforehand probably thunder stolen hopefully photoshop ipad currently run ipad specifically ipad pro model ipad air rd generation ipad th th generation ipad mini th generation may see stylus friendly platform lifetime'"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "corpus[4]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>text</th>\n",
       "      <th>topic</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>dhara singh cnet twelve mile hustle bustle tim...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>bbc doctor streaming exclusively hbo max next ...</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>roland quandt headphone jack phone good run li...</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>geoffrey morrison cnet autonomous sensory meri...</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>sarah tew cnet adobe fresco make wish talent c...</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>video screenshot amanda kooser cnet starship p...</td>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>sarah tew cnet macbook pro banned flight u avi...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>enlarge image lexus lexus lc series car little...</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>james martin cnet president donald trump tweet...</td>\n",
       "      <td>17</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>getty image credit karma user able see people ...</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>le month since chevrolet corvette stingray bow...</td>\n",
       "      <td>14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>enlarge image larry chen aprilia pike peak int...</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>amazon studio first glance katie licata instag...</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>pete saloutos looking something past midnight ...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>getty google want make easier people find podc...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>nicole rivelli amazon studio want look marvelo...</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>enlarge image lexus advent model year lexus lx...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>enlarge image sarah tew cnet half wearable spe...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>sarah tew cnet samsung second g phone galaxy n...</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>august mean student heading back school next w...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>epic game season fortnite offered big change w...</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>sopa image mobile carrier prepare deploy g net...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>enlarge image novitec tesla model favorite car...</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>watch mtv video music award without cable lear...</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>screenshot lori grunin cnet nvidia gaugan comp...</td>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>enlarge image chevrolet mid engine chevrolet c...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>snap snap unveiled third version snapchat spec...</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>pokemon company pokemon company celebrating up...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>angela lang cnet youtube changed recommendatio...</td>\n",
       "      <td>11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>sarah tew cnet kind cord cutter want experienc...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1505</th>\n",
       "      <td>nikita wagh born november ileana cruz born mum...</td>\n",
       "      <td>14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1506</th>\n",
       "      <td>maruti suzuki recently launched xl followed co...</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1507</th>\n",
       "      <td>chia seed officially transitioned trendy mains...</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1508</th>\n",
       "      <td>getty image york york august roger federer swi...</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1509</th>\n",
       "      <td>getty recording double digit revenue growth in...</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1510</th>\n",
       "      <td>bad old day car rusting time first service tha...</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1511</th>\n",
       "      <td>way verify income tax return duration verifica...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1512</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1513</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1514</th>\n",
       "      <td>replay video setting hd hq sd lo video provide...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1515</th>\n",
       "      <td>day ahead release india first reaction saaho a...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1516</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1517</th>\n",
       "      <td>maruti suzuki india launched initiative known ...</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1518</th>\n",
       "      <td>singer kanika kapoor fair amount struggle life...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1519</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1520</th>\n",
       "      <td>sanjeev verma hindustan time getty haryana chi...</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1521</th>\n",
       "      <td>india elavenil valarivan became third shooter ...</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1522</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1523</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1524</th>\n",
       "      <td>lavish lair world worst dictator daniel coughl...</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1525</th>\n",
       "      <td>eaten three serving vegetable today photo cour...</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1526</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1527</th>\n",
       "      <td>replay video setting hd hq sd lo prime ministe...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1528</th>\n",
       "      <td>trailer zoya factor provided statesman net pri...</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1529</th>\n",
       "      <td>pratiksha mestry personal front sunny leone ma...</td>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1530</th>\n",
       "      <td>well iphone x face id work secure duration app...</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1531</th>\n",
       "      <td>older browser version please use supported ver...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1532</th>\n",
       "      <td>getty image major change proposed income tax a...</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1533</th>\n",
       "      <td>reuters reserve bank india set release annual ...</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1534</th>\n",
       "      <td>gabrielle olya city ollolai italy currently se...</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1535 rows × 2 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                   text  topic\n",
       "0     dhara singh cnet twelve mile hustle bustle tim...      0\n",
       "1     bbc doctor streaming exclusively hbo max next ...      8\n",
       "2     roland quandt headphone jack phone good run li...      8\n",
       "3     geoffrey morrison cnet autonomous sensory meri...      1\n",
       "4     sarah tew cnet adobe fresco make wish talent c...      5\n",
       "5     video screenshot amanda kooser cnet starship p...     13\n",
       "6     sarah tew cnet macbook pro banned flight u avi...      7\n",
       "7     enlarge image lexus lexus lc series car little...      2\n",
       "8     james martin cnet president donald trump tweet...     17\n",
       "9     getty image credit karma user able see people ...      5\n",
       "10    le month since chevrolet corvette stingray bow...     14\n",
       "11    enlarge image larry chen aprilia pike peak int...      4\n",
       "12    amazon studio first glance katie licata instag...      1\n",
       "13    pete saloutos looking something past midnight ...      0\n",
       "14    getty google want make easier people find podc...      0\n",
       "15    nicole rivelli amazon studio want look marvelo...      1\n",
       "16    enlarge image lexus advent model year lexus lx...      0\n",
       "17    enlarge image sarah tew cnet half wearable spe...      0\n",
       "18    sarah tew cnet samsung second g phone galaxy n...      5\n",
       "19    august mean student heading back school next w...      0\n",
       "20    epic game season fortnite offered big change w...      5\n",
       "21    sopa image mobile carrier prepare deploy g net...      0\n",
       "22    enlarge image novitec tesla model favorite car...      2\n",
       "23    watch mtv video music award without cable lear...      8\n",
       "24    screenshot lori grunin cnet nvidia gaugan comp...     13\n",
       "25    enlarge image chevrolet mid engine chevrolet c...      7\n",
       "26    snap snap unveiled third version snapchat spec...     10\n",
       "27    pokemon company pokemon company celebrating up...      0\n",
       "28    angela lang cnet youtube changed recommendatio...     11\n",
       "29    sarah tew cnet kind cord cutter want experienc...      0\n",
       "...                                                 ...    ...\n",
       "1505  nikita wagh born november ileana cruz born mum...     14\n",
       "1506  maruti suzuki recently launched xl followed co...      2\n",
       "1507  chia seed officially transitioned trendy mains...      4\n",
       "1508  getty image york york august roger federer swi...     10\n",
       "1509  getty recording double digit revenue growth in...      5\n",
       "1510  bad old day car rusting time first service tha...      5\n",
       "1511  way verify income tax return duration verifica...      0\n",
       "1512  older browser version please use supported ver...      7\n",
       "1513  older browser version please use supported ver...      7\n",
       "1514  replay video setting hd hq sd lo video provide...      0\n",
       "1515  day ahead release india first reaction saaho a...      0\n",
       "1516  older browser version please use supported ver...      7\n",
       "1517  maruti suzuki india launched initiative known ...      3\n",
       "1518  singer kanika kapoor fair amount struggle life...      0\n",
       "1519  older browser version please use supported ver...      7\n",
       "1520  sanjeev verma hindustan time getty haryana chi...     15\n",
       "1521  india elavenil valarivan became third shooter ...      9\n",
       "1522  older browser version please use supported ver...      7\n",
       "1523  older browser version please use supported ver...      7\n",
       "1524  lavish lair world worst dictator daniel coughl...      2\n",
       "1525  eaten three serving vegetable today photo cour...     15\n",
       "1526  older browser version please use supported ver...      7\n",
       "1527  replay video setting hd hq sd lo prime ministe...      7\n",
       "1528  trailer zoya factor provided statesman net pri...      2\n",
       "1529  pratiksha mestry personal front sunny leone ma...     13\n",
       "1530  well iphone x face id work secure duration app...      2\n",
       "1531  older browser version please use supported ver...      7\n",
       "1532  getty image major change proposed income tax a...      0\n",
       "1533  reuters reserve bank india set release annual ...      7\n",
       "1534  gabrielle olya city ollolai italy currently se...     12\n",
       "\n",
       "[1535 rows x 2 columns]"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data=pd.DataFrame({\"text\":corpus, \"topic\":selected_topic})\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Multinomial NB"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.feature_extraction.text import CountVectorizer\n",
    "from sklearn.feature_extraction.text import TfidfTransformer\n",
    "from sklearn.naive_bayes import MultinomialNB\n",
    "X_train, X_test, y_train, y_test = train_test_split(data['text'], data['topic'],test_size=0.4)\n",
    "count_vect = CountVectorizer()\n",
    "X_train_counts = count_vect.fit_transform(X_train)\n",
    "tfidf_transformer = TfidfTransformer()\n",
    "X_train_tfidf = tfidf_transformer.fit_transform(X_train_counts)\n",
    "clf = MultinomialNB().fit(X_train_counts, y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'took golf ball sized hail total prius brutal enough hard time wrapping head around hail long roll toilet paper national weather service office boulder colorado goodland kansa near colorado border looking report near record size hail storm week colorado kktv meteorologist brian bledsoe tuesday posted photo massive hailstone collected near bethune colorado said working verifying size hail could end beating state record inch centimeter ice chunk nwsboulder nwsgoodland verifying look record setting hailstone cowx told fell near bethune afternoon would easily beat record given way radar looked surprised stay tuned pic twitter com liuaziln r brian bledsoe brianbledsoe august still trying verify largest hailstone fell near otis washington county picture diameter state record see http co ukuzsmhf cowx cohail nw boulder nwsboulder august current colorado state hail size record set met many time recently adam county hail fell near small town otis northeastern colorado sunday weather service office boulder investigating hail picture inch diameter office tweeted monday nw goodland office jumped fray eye popping image shared tuesday hailstone look big softball received picture facebook comment facebook post hail bethune asked save hail stone freezing heard response yet pic twitter com bmiexiyvz nw goodland nwsgoodland august colorado climate center helping record verification hailstone organization tweeted tip preserving hail starting gathering sample safe take photo ruler object known size avoid heating stone hand place freezer alone plastic bag soon possible hope find sometime week icy behemoth broke colorado state record grateful fall car'"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_test_list=list(X_test)\n",
    "X_test_list[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "pred=[]\n",
    "for i in range(len(X_test_list)):\n",
    "    pred.append(int(str(clf.predict(count_vect.transform([X_test_list[i]])))[1:-1]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [],
   "source": [
    "predictions=pd.DataFrame({'MultinomialNB predictions':pred})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "              precision    recall  f1-score   support\n",
      "\n",
      "           0       0.24      0.53      0.33       127\n",
      "           1       0.02      0.02      0.02        42\n",
      "           2       0.10      0.02      0.04        46\n",
      "           3       0.00      0.00      0.00        30\n",
      "           4       0.11      0.05      0.07        58\n",
      "           5       0.19      0.07      0.10        43\n",
      "           6       0.00      0.00      0.00         1\n",
      "           7       0.86      0.17      0.28        36\n",
      "           8       0.20      0.45      0.28        98\n",
      "           9       0.00      0.00      0.00        18\n",
      "          10       0.00      0.00      0.00        25\n",
      "          11       0.00      0.00      0.00        12\n",
      "          12       0.00      0.00      0.00        15\n",
      "          13       0.08      0.04      0.05        27\n",
      "          14       0.00      0.00      0.00         3\n",
      "          15       0.00      0.00      0.00        14\n",
      "          16       0.00      0.00      0.00         2\n",
      "          17       0.00      0.00      0.00         9\n",
      "          18       0.00      0.00      0.00         6\n",
      "          19       0.00      0.00      0.00         2\n",
      "\n",
      "   micro avg       0.21      0.21      0.21       614\n",
      "   macro avg       0.09      0.07      0.06       614\n",
      "weighted avg       0.17      0.21      0.15       614\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "c:\\users\\reliance\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\sklearn\\metrics\\classification.py:1143: UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples.\n",
      "  'precision', 'predicted', average, warn_for)\n"
     ]
    }
   ],
   "source": [
    "from sklearn import metrics\n",
    "print(metrics.classification_report(y_test, pred))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'nb_pred' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[1;32m<ipython-input-42-ff44873469a1>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m      1\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0msklearn\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmetrics\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mconfusion_matrix\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mcm\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mconfusion_matrix\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my_test\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnb_pred\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m      3\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mseaborn\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0msns\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m      4\u001b[0m \u001b[0msns\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mheatmap\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcm\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mannot\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;32mTrue\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;31mNameError\u001b[0m: name 'nb_pred' is not defined"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import confusion_matrix\n",
    "cm=confusion_matrix(y_test, nb_pred)\n",
    "import seaborn as sns\n",
    "sns.heatmap(cm, annot=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "metrics.f1_score(y_test, pred, average='weighted')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Random forest"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.ensemble import RandomForestClassifier\n",
    "classifier = RandomForestClassifier(n_estimators = 10, criterion = 'entropy', random_state = 42)\n",
    "classifier.fit(X_train_counts, y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "classifier.predict(count_vect.transform([X_test_list[200]]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'X_test_list' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[1;32m<ipython-input-36-f514b98bbf48>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m      2\u001b[0m \u001b[1;31m# model accuracy for X_test\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m      3\u001b[0m \u001b[1;31m#accuracy = svm_model_linear.score(count_vect.transform([X_test_list[i]]), y_test)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlen\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mX_test_list\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m      5\u001b[0m     \u001b[0mrf_predictions\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mclassifier\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mpredict\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mcount_vect\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtransform\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mX_test_list\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mi\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m      6\u001b[0m \u001b[1;31m# creating a confusion matrix\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;31mNameError\u001b[0m: name 'X_test_list' is not defined"
     ]
    }
   ],
   "source": [
    "rf_predictions=[] \n",
    "# model accuracy for X_test   \n",
    "#accuracy = svm_model_linear.score(count_vect.transform([X_test_list[i]]), y_test) \n",
    "for i in range(len(X_test_list)): \n",
    "    rf_predictions.append(int(str(classifier.predict(count_vect.transform([X_test_list[i]])))[1:-1]))\n",
    "# creating a confusion matrix \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "predictions['RF predictions']=rf_predictions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.metrics import confusion_matrix\n",
    "cm=confusion_matrix(y_test, rf_predictions)\n",
    "import seaborn as sns\n",
    "sns.heatmap(cm, annot=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "\n",
    "from sklearn import metrics\n",
    "print(metrics.classification_report(y_test, rf_predictions))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "metrics.f1_score(y_test, rf_predictions, average='weighted')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# kNN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "error = []\n",
    "for i in range(1, 40):\n",
    "    knn = KNeighborsClassifier(n_neighbors=i)\n",
    "    knn.fit(X_train_tfidf, y_train)\n",
    "    pred_i = knn.predict(count_vect.transform(X_test_list))\n",
    "    error.append(np.mean(pred_i != y_test))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "plt.figure(figsize=(12, 6))\n",
    "plt.plot(range(1, 40), error, color='red', linestyle='dashed', marker='o',\n",
    "         markerfacecolor='blue', markersize=10)\n",
    "plt.title('Error Rate K Value')\n",
    "plt.xlabel('K Value')\n",
    "plt.ylabel('Mean Error')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.neighbors import KNeighborsClassifier\n",
    "\n",
    "model = KNeighborsClassifier(n_neighbors=18)\n",
    "\n",
    "# Train the model using the training sets\n",
    "model.fit(X_train_tfidf, y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "knn_predictions=[] \n",
    "# model accuracy for X_test   \n",
    "#accuracy = svm_model_linear.score(count_vect.transform([X_test_list[i]]), y_test) \n",
    "for i in range(len(X_test_list)): \n",
    "    knn_predictions.append(int(str(model.predict(count_vect.transform([X_test_list[i]])))[1:-1]))\n",
    "# creating a confusion matrix \n",
    "knn_predictions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "predictions['kNN predictions']=knn_predictions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.metrics import confusion_matrix\n",
    "cm=confusion_matrix(y_test, knn_predictions)\n",
    "import seaborn as sns\n",
    "sns.heatmap(cm, annot=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "metrics.f1_score(y_test, knn_predictions, average='weighted')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn import metrics\n",
    "print(metrics.classification_report(y_test, knn_predictions))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "def small_links(link_list,term):\n",
    "    a=[]\n",
    "    for i in range(len(link_list)):\n",
    "        if i not in a\n",
    "        a.append(link_list[i])\n",
    "        \n",
    "        "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
